/**
 * Wihidum - Efficient Broker Hierarchy for Publish Subscribe Middleware
 *
 * License      :   Apache License 2.0
 * Home Page    :   http://code.google.com/p/wihidum/
 * Mailing List :   wihidum@googlegroups.com
 */

package lk.mrt.cse.wihidum.listener.storage;

import java.util.*;

/**
 * Interface to access delivery elements in database
 */
public interface DeliveryElementManager
{
    /**
     * Save a delivery element
     *
     * @param deliveryElement Delivery element to be saved
     * @return True if saved successfully, otherwise false
     */
    public boolean saveDeliveryElement (DeliveryElement deliveryElement);

    /**
     * Get delivery elements given subscription id
     *
     * @param subscriptionID Subscription ID of the subscriber
     * @return List of delivered elements
     */
    public ArrayList<DeliveryElement> getDeliveryElements (String subscriptionID);
}
